1
พื้นฐานของชนิดข้อมูลสเกลาร์ในรูบี
AI035Lesson 3
00:00

ในจักรวาลอันสง่างามของรูบี, ชนิดข้อมูลสเกลาร์ คืออะตอมที่ไม่สามารถแบ่งแยกได้ของตรรกะ แตกต่างจากโครงสร้างที่จัดเก็บข้อมูลกลุ่ม ซึ่งชนิดสเกลาร์เช่น Integer และ Float แสดงถึงค่าเดียวที่แม่นยำ ชนิดเหล่านี้สืบทอดมาจากคลาส Numeric โดยมีรหัสพันธุกรรมที่แข็งแรงจากวิธีการทางคณิตศาสตร์

จำนวนเต็มที่ยืดหยุ่นได้

รูบีจัดการหน่วยความจำด้วยศิลปะอันซับซ้อน มันแยกแยะระหว่าง Fixnum (จำนวนเต็มในช่วงที่เหมาะสมกับฮาร์ดแวร์) และ Bignum (จำนวนเต็มแบบความแม่นยำไม่จำกัด) ในระบบ 64 บิต ขอบเขตจะอยู่ระหว่าง $-2^{62}$ กับ $2^{62} - 1$

เมื่อการคำนวณเกินขอบเขตเหล่านี้ อัลกอริธึมภายในของรูบีจะดำเนินการ การเปลี่ยนแปลงโดยเงียบๆเพื่อจัดสรรหน่วยความจำใหม่โดยใช้ชุดจำนวนเต็มสั้นที่มีความยาวแปรผัน ซึ่งปกป้องนักพัฒนาจากการเกิด การเกินค่าจำนวนเต็ม ที่พบได้บ่อยในภาษาระดับต่ำ

NumericIntegerFloatFixnum (เฉพาะตัว)-2⁶² ถึง 2⁶²-1Bignum (ยืดหยุ่นได้)ความยาวแปรผันการแปลงอัตโนมัติ

การโต้ตอบกับชนิดข้อมูลสเกลาร์

ชนิดข้อมูลสเกลาร์ไม่ใช่สิ่งที่นิ่งเฉย แต่ตอบสนองต่อเมธอดเช่น .abs และมีส่วนร่วมในลำดับการทำงานแบบฟังก์ชันผ่านตัวทำซ้ำ เพื่อการตรวจสอบที่เข้มงวด ใช้เมธอด Integer(object) เพื่อให้แน่ใจว่าข้อมูลที่เป็นตัวเลขเท่านั้นที่เข้าสู่ตรรกะของคุณ ปกป้องระบบจากข้อมูลที่ไม่ถูกต้อง

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>